import axios from 'axios';

// 创建一个 axios 实例
const instance = axios.create({
  baseURL: 'http://172.16.139.164:9999/zygl/',
  timeOut: 6000
})

// 请求拦截器
// instance.interceptors.request.use((response) => {
//   return config;
// }, (err) => {
//   return Promise.reject(err);
// })

// 响应拦截器
// instance.interceptors.request.use((response) => {
//   return response.data;
// }, (err) => {
//   return Promise.reject(err);
// })

/**
 * 使用es6的export default导出了一个函数，导出的函数代替axios去帮我们请求数据，
 * 函数的参数及返回值如下：
 * @param {String} method  请求的方法：get、post、delete、put
 * @param {String} url     请求的url:
 * @param {Object} data    请求的参数
 * @returns {Promise}     返回一个promise对象，其实就相当于axios请求数据的返回值
 */
export default (method, url, data = null) => {
  method = method.toLowerCase();
  switch (method) {
    case 'post':
      return instance.post(url, data);
      break;
    case 'get':
      return instance.get(url, { params: data });
      break;
    case 'delete':
      return instance.delete(url, { params: data });
      break;
    case 'put':
      return instance.put(url, data);
      break;
    default:
      console.log('未知的method--' + method)
      return false;
  }
}